<script setup>
import userPerson from "@/pinia/person"
import {storeToRefs} from "pinia"

const personStore = userPerson()
const {name, age, address} = storeToRefs(personStore)

function changeInfo() {

  // 可以通过 store 实例访问状态来直接读取和写入状态
  /*  personStore.name = "TAOPINQI"
    personStore.age++
    personStore.address = "粤语"*/

  //调用 $patch 方法。 它允许您使用部分“state”对象同时应用多个更改
  /*  personStore.$patch({
      name:"马云",
      age:20,
      address:"汉族"
    })*/

  // 可以通过将其 $state 属性设置为新对象来替换 Store 的整个状态
  personStore.$state = {
    name: "马云",
    age: 20,
    address: "汉族"
  }
}

function resetInfo() {
  //通过调用 store 上的 $reset() 方法将状态 重置 到其初始值
  personStore.$reset()
}

</script>

<template>
  <h1>{{ name }}</h1>
  <h1>{{ age }}</h1>
  <h1>{{ address }}</h1>
  <button @click="changeInfo">修改state</button>
  <button @click="resetInfo">重置state</button>
</template>

<style scoped lang="less">

</style>
